package exercise;

import java.util.Random;
import java.util.Scanner;

/*
b. 模拟向货船上装载集装箱，每个集装箱有一定重量，
该重量（整数）大于100小于1000，货船总重为1000，
装载若干集装箱后，如果货船超重，那么货船认为这是一个异常，
将拒绝装载集装箱，但无论是否发生异常，货船都需要正点启航。
比如:输入:
199        输出:  目前装载了199吨货物
400        输出:  目前装载了599吨货物
300        输出:  目前装载了899吨货物
300        输出:  超重
无法再装载重量是300吨的集装箱
货船将正点启航

提示: 使用自定义异常
 */
public class ex04 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int sum = 0, weight = 0;
        try {
            while (true) {
                weight = sc.nextInt();
                sum += weight;
                if (sum > 1000) throw new OverweightException("超载");
                System.out.println("目前装载了" + sum + "吨货物");
            }
        } catch (OverweightException e) {
            System.err.println(e.getMessage());
            System.err.println("无法再装载重量是" + weight + "吨的集装箱");
        } finally {
            System.out.println("货船将正点启航");
        }
    }
}

class OverweightException extends Exception {
    public OverweightException(String message) {
        super(message);
    }
}
